I am trying to write code to find all the prime numbers before a user entered number. I started with a working program and when I tried to create a function, it got all messed up. Can you help fix it ?


Code:
#include <stdio.h>

int is_prime( int num );
int get_positive_integer(void);

int main( ) {
  int upper;   /* upper limit to check    */
  int num;     /* current number to check */
  int isprime;
 /* used to flag if number is prime or not */

  upper = get_positive_integer();

  /* Outer Loop - loop over num in range [2, upper] */

  for (num = 2; num <= upper; num++) {

    /* Inner Loop - check if num is prime */
    is_prime(num); {

      isprime = 1;     /* 1 = TRUE; assume num is prime to start */

      isprime = is_prime;
    }
  if (isprime) {
      printf("%d is prime.\n", num);
    }

  }

  return 0;
}


int get_positive_integer(void)
{
  int number;

  do {
    printf("Enter a positive integer: ");
    scanf("%d", &number);
  } while (number < 1);

  return number;
}


int is_prime( int num ){
  int div;     /* divisor                 */

  for (div=2; div<num; div++) {

    /* if div divides num evenly, then num % div == 0 */

  if (num % div == 0) {
      break;

    }

  }
  return 0;
  return 1;
}
Sorry about indentation mistakes in advance. It says the error is on line 23